package excel

func init() {
	Tabs = make(map[string]TabDef)
	AddSheet(
		"RoleLevel",
		"ID,key@int32",
		"Exp@int32",
		"Attack@int32",
		"AttackPower@int32",
		"Defenses@int32",
		"DefensesPower@int32",
		"HitPoint@int32",
		"HPPower@int32",
		"ElementalDefenses@int32",
		"ElementalDefensesPower@int32",
		"ArmorPoiseHealth@int32",
		"PoiseDamage@int32",
		"PoiseDamagePower@int32",
		"MovementSpeed@int32",
		"MovementSpeedPower@int32",
		"AwakenEnergy@int32",
		"AwakenEnergyGain@int32",
		"AwakenEnergyGainSpeed@int32",
		"AwakenEnergyCost@int32",
		"AwakenEnergyLessCost@int32",
		"MusouEnergy@int32",
		"MusouEnergyGain@int32",
		"MusouEnergyGainSpeed@int32",
		"CritChance@int32",
		"CritPower@int32",
		"CritDamage@int32",
		"DamagePower@int32",
		"DefensesReduction@int32",
		"FireAttack@int32",
		"FireAttackPower@int32",
		"IceAttack@int32",
		"IceAttackPower@int32",
		"LightningAttack@int32",
		"LightningAttackPower@int32",
		"AttackPowerToAir@int32",
		"AttackPowerToFall@int32",
		"AttackPowerToHumanGrass@int32",
		"AttackPowerToInfernal@int32",
		"AttackPowerToBoss@int32",
		"PhysicalResistance@int32",
		"ElementalResistance@int32",
		"MusouAttack@int32",
		"MusouAttackPower@int32",
		"AwakenAttack@int32",
		"AwakenAttackPower@int32",
	)

	AddSheet(
		"Map",
		"ID,key@int32",
		"Type@int32",
		"Length@int32",
		"Width@int32",
		"DefaultPosition@struct@x:int32,y:int32,z:int32@,",
		"DefaultRotation@int32",
	)

	//功能开启
	AddSheet(
		"GamePlay",
		"ID,key@int32",
		"UnlockLevel@int32",
	)

	//商城
	AddSheet(
		"Store",
		"ID,key@int32",
		"Type@int32",
		"ItemID@int32",
		"CurrencyType@int32",
		"Price@int32",
	)

	AddSheet(
		"Item",
		"ID,key@int32",
		"Type@int32",
		"CanUse@bool",
		"RequiresLevel@int32",
		"Limit@int32",
		"Stacks@int32",
		"DropPool@int32",
	)

	AddSheet(
		"Weapon",
		"ID,key@int32",
		"Class@int32",
		"Type@int32",
		"Name@string",
		"DefaultStar@int32",
		"ActivateShards@int32",
		"TransformShards@int32",
		"Rarity@int32",
		"AttackCoefficient@int32",
		"DefensesCoefficient@int32",
		"GeneralResistance@int32",
		"ActiveType@int32",
		"ActiveID@int32",
		"ShardCancomposit@bool",
		"ShardCost@addarray@ShardId:int32,ShardCount:int32@ShardId_,ShardCount_;1,2",
	)

	AddSheet(
		"WeaponStar",
		"ID,key@int32",
		"WeaponID@int32",
		"StarLevel@int32",
		"CostShard@int32",
		"AdditionPower@int32",
		"CollectPowerType@int32",
		"CollectPower@int32",
	)

	//活动
	AddSheet(
		"ActivityLevel",
		"ID,key@int32",
		"BattleLevel@int32",
		"ActivityValue@int32",
		"RecommendLevel@int32",
		"LimitMinLevel@int32",
		"LimitMaxLevel@int32",
		"RecommendPlayerCount@int32",
		"LimitMinPlayerCount@int32",
		"LimitMaxPlayerCount@int32",
		"LimitEnterCount@int32",
		"LimitStartEnterTime@string",
		"LimitEndEnterTime@string",
		"RefreshTime@string",
	)

	//关卡
	AddSheet(
		"BattleLevel",
		"ID,key@int32",
		"Type@int32",
		"IsReconnet@bool",
		"MapID@int32",
		"Position@struct@x:int32,y:int32,z:int32@,",
		"Angle@int32",
		"NeedTP@bool",
		"PreconditionLevel@int32",
		"IsReturnWhenFail@bool",
		"IsResurgence@bool",
		"ResurgenceId@int32",
		"ActionPointCost@int32",
		"GoldCost@int32",
		"DiamondCost@int32",
		"ItemCost@addarray@ItemID:int32,ItemCount:int32@CostItem_,CostItemCount_;1,3",
		"StageConfig@string",
		"DropPool@int32",
	)

	AddSheet(
		"BossZone",
		"ID,key@int32",
		"BattleLevel@int32",
		"Difficulty@int32",
		"ActionPointCost@int32",
		"MopCostID@int32",
		"MopCostCount@int32",
	)

	//复活规则
	AddSheet(
		"Resurgence",
		"ID,key@int32",
		"ResurgenceTimes@int32",
		"Attack@int32",
		"Defenses@int32",
		"HitPoint@int32",
		"Costs@addarray@Price:int32@Price_;1,5",
	)

	//英魂战场
	AddSheet(
		"BattleGround",
		"ID,key@int32",
		"UnLockLevel@int32",
		"Count@int32",
		"ThroughDropPool@int32",
		"ExploreUnlockLevel@int32",
		"Explore@array@Times:int32@,;",
		"DiamondCost@int32",
		"BoosRangeLeft@int32",
		"BoosRangeRight@int32",
		"BoosMaxCount@int32",
		"EliteRangeLeft@int32",
		"EliteRangeRight@int32",
		"EliteMaxCount@int32",
		"GeneralRangeLeft@int32",
		"GeneralRangeRight@int32",
		"BuffID@array@BuffId:int32@,;",
	)

	AddSheet(
		"Monster",
		"ID,key@int32",
		"Level@int32",
		"Type@int32",
		"Exp@int32",
		"Gold@int32",
		"DropPool@int32",
		"Attack@int32",
		"Defenses@int32",
		"HitPoint@int32",
		"ArmorPoiseHealth@int32",
		"MovementSpeed@int32",
		"CritChance@int32",
		"CritPower@int32",
		"CritDamage@int32",
		"CritResistance@int32",
		"PhysicalResistance@int32",
	)

	//抽卡
	AddSheet(
		"DrawCard",
		"ID,key@int32",
		"StoreID@int32",
		"CostCount@int32",
		"DrawCardTimes@int32",
		"DropPoolID@int32",
		"DrawCardLoopTimes@int32",
		"DropPoolIDLoop@int32",
		"DropPools@addarray@DropPoolID:int32,DropChances:int32@DropPoolID_,DropChances_;1,5",
	)

	//掉落池
	AddSheet(
		"DropPool",
		"ID,key@int32",
		"Type@int32",
		"MinCount@int32",
		"MaxCount@int32",
		"Drops@addarray@DropType:int32,DropID:int32,Count:int32,Wave:int32,Chance:int32@DropType_,DropID_,DropCount_,Wave_,DropChances_;1,20",
	)

	AddSheet(
		"StoryStageVisible",
		"MapID,key@int32",
		"Limit@array@storyStage:int32,min:int32,max:int32@;,",
	)

	//星图成就
	AddSheet(
		"StarMap",
		"Level,key@int32",
		"ID@int32",
		"CostExp@int32",
		"CostMoon@int32",
		"Attack@int32",
		"Defense@int32",
		"HitPoint@int32",
	)

	//星图武器收集
	AddSheet(
		"WeaponCollection",
		"ID,key@int32",
		"Type@int32",
		"Value@string",
		"Target@int32",
		"Award@addarray@StarMapExp:int32@Award_;1,5",
	)

	//武魂
	AddSheet(
		"Soul",
		"ID,key@int32",
		"Level@int32",
		"Order@int32",
		"Rarity@int32",
		"LackHole@array@LackPos:int32@,;",
		"BaseAttack@int32",
		"BaseDefenses@int32",
		"BaseHitPoint@int32",
		"TwoSuit@addarray@SuitType:int32,SuitAttr:int32@10,11",
		"FourSuit@addarray@SuitType:int32,SuitAttr:int32@13,14",
		"RandAttr@addarray@Min:int32,Max:int32@16,17;18,19;20,21;22,23;24,25;26,27;28,29;30,31;32,33",
	)

	AddSheet(
		"SoulRandCount",
		"Rarity,key@int32",
		"RandCount@addarray@Prob:int32@P;1,5",
	)

	AddSheet(
		"SoulRandAttr",
		"ID,key@int32",
		"Pos@int32",
		"Order@int32",
		"Count@int32",
		"RandAttr@addarray@Prob:int32@4;5;6;7;8;9;10;11;12",
	)

	AddSheet(
		"SoulEnchant",
		"EnchantLevel,key@int32",
		"Prob@int32",
		"Punishment@int32",
		"BaseAttack@int32",
		"BaseDefenses@int32",
		"BaseHitPoint@int32",
		"GoldCost@int32",
		"ProtectionId@int32",
		"ProtectionCount@int32",
		"ItemCost@addarray@ItemId:int32,ItemCount:int32@Cost_,CostCount_;1,3",
	)

	AddSheet(
		"SoulStar",
		"ID,key@int32",
		"Level@int32",
		"Order@int32",
		"SoulAttr@addarray@AddAttr:int32@3;4;5;6;7;8;9;10;11",
	)

	AddSheet(
		"SoulUpStar",
		"ID,key@int32",
		"Rarity@int32",
		"Order@int32",
		"Exp@int32",
		"NeedExps@addarray@NeedExp:int32@4;5;6;7;8",
	)

	//技能
	AddSheet(
		"Skill",
		"ID,key@int32",
		"Type@int32",
		"UnLockLevel@int32",
		"SpecialActiveCondition@int32",
	)

	AddSheet(
		"SkillLevel",
		"ID,key@int32",
		"CostSkillPoint@int32",
		"CostGold@int32",
	)

	/*
		AddSheet(
			"Item@addarray@x:int32,y:int32@13,14;15,16",
			"ShardCost@addarray@ShardId:int32,ShardCount:int32@ShardId_,ShardCount_;1,2",
		)
		读指定列 或者读字符串 添加为数组

	*/
	/*	AddSheet(
			"counpons",
			"id,key@int",
			"name@string",
			"type@int",
			"platform_type@int",
			"counpons_number@int",
			"item1@array@tid:int,count:int@;:",
			"item2@struct@tid:int,count:int@;",
			"item3@array@string@;",
		)
	*/
}
